// 调用微信登录接口
export function uniLogin() {
	return new Promise((resolve, reject) => {
		uni.login({
			provider: 'weixin',
			success: (res) => {
				if (res.code) {
					resolve({
						data: {
							code: res.code
						}
					});
				} else {
					reject(new Error('获取用户登录状态失败！' + res.errMsg));
				}
			},
			fail: (err) => {
				reject(new Error('登录失败：' + err.errMsg));
			}
		});
	});
}
export function goswitchTab(url) { //跳转到 tabBar 页面
	uni.switchTab({
		url: url
	});
}

export function gonavigateTo(url) { //跳转页面
	uni.navigateTo({
		url: url
	});
}

export function goToPageWithToast(url) { //跳转登录
	// 显示提示
	uni.showToast({
		title: '正在跳转登录页面',
		icon: 'none',
		duration: 1500
	});

	setTimeout(function() { // 延迟一定时间后执行页面跳转
		wx.switchTab({
			url: url // 使用传入的 URL 跳转
		});
	}, 1200); // 延迟时间可以根据实际情况调整
}

export function loading(message) { //加载动画
	uni.showLoading({
		title: message,
		mask: true,
	});
}

export function hide() { //关闭加载
	uni.hideLoading();
}

export function showToast(message, item) { //提示框
	uni.showToast({ //提示框
		title: message,
		icon: 'none',
		duration: item //持续时间为 2秒
	})
}
// 将时间戳转换为日期，并格式化为 "YYYY-M-D" 格式
export function getdate(data) {
	// 如果时间戳是以毫秒为单位，不需要乘以1000
	const date = new Date(data); // 或者 new Date(data * 1000) 如果是以秒为单位

	// 增加一天
	date.setDate(date.getDate() + 1);

	// 使用UTC时间
	const year = date.getUTCFullYear(); // 获取年份
	const month = (date.getUTCMonth() + 1).toString().padStart(2, '0'); // 获取月份，月份从0开始，所以加1
	const day = date.getUTCDate().toString().padStart(2, '0'); // 获取日期，日期从1开始

	return `${year}-${month}-${day}`; // 返回格式化的日期字符串
}

// 获取当前时间并转为（2024-10-29 16:09:06）格式
export function getFormattedTime() {
	const now = new Date();
	const year = now.getFullYear();
	const month = now.getMonth() + 1; // getMonth() 返回的月份从0开始，所以需要+1
	const day = now.getDate();
	const hour = now.getHours();
	const minute = now.getMinutes();
	const second = now.getSeconds();

	// 格式化单个数字为两位数
	const padZero = (num) => num.toString().padStart(2, '0');

	// 组合成指定格式的字符串
	return `${year}-${padZero(month)}-${padZero(day)} ${padZero(hour)}:${padZero(minute)}:${padZero(second)}`;
};